package com.dingshang.dsapp.mapper;

import com.dingshang.dsapp.entity.KeyValue;
import com.dingshang.dsapp.entity.KeyValueWithBLOBs;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface KeyValueMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(KeyValueWithBLOBs record);

    int insertSelective(KeyValueWithBLOBs record);

    KeyValueWithBLOBs selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(KeyValueWithBLOBs record);

    int updateByPrimaryKeyWithBLOBs(KeyValueWithBLOBs record);

    int updateByPrimaryKey(KeyValue record);

    List<KeyValueWithBLOBs> listKeyValue(@Param("valueType") Integer valueType);

    KeyValueWithBLOBs getKeyValue(@Param("valueType") Integer valueType);

    int deleteKeyValue(@Param("valueType") Integer valueType);

    List<KeyValueWithBLOBs> listAnli(@Param("zxStyle")String zxStyle, @Param("valueType") Integer valueType);

    List<KeyValueWithBLOBs> listServer(@Param("serverStyle")String serverStyle, @Param("valueType") Integer valueType);
    List<KeyValueWithBLOBs> listShejishi(@Param("sjStyle")String sjStyle, @Param("valueType") Integer valueType);
    List<KeyValueWithBLOBs> listAbout(@Param("aboutStyle")String aboutStyle, @Param("valueType") Integer valueType);
    
    List<KeyValueWithBLOBs> listBaojia(@Param("valueType") Integer valueType, 
                                       @Param("offset") Integer offset, 
                                       @Param("pageNumber")Integer pageNumber);

    int countBaojia(@Param("valueType") Integer valueType);

    List<KeyValueWithBLOBs> listAllShejishi(@Param("valueType") Integer valueType);


    List<KeyValueWithBLOBs> listAppAnli(@Param("zxStyle")String zxStyle,
                                        @Param("valueType") Integer valueType,
                                        @Param("offset") Integer offset,
                                        @Param("pageNumber")Integer pageNumber);

    int countAppAnli(@Param("zxStyle")String zxStyle,
                                        @Param("valueType") Integer valueType);

    KeyValueWithBLOBs getFuwu(@Param("serverStyle") String serverStyle,
                              @Param("valueType") Integer valueType);

    List<KeyValueWithBLOBs> listappShejishi(@Param("sjStyle")String sjStyle,
                                        @Param("valueType") Integer valueType,
                                        @Param("offset") Integer offset,
                                        @Param("pageNumber")Integer pageNumber);

    int countShejishi(@Param("sjStyle")String sjStyle,
                     @Param("valueType") Integer valueType);

    KeyValueWithBLOBs getAbout(@Param("aboutStyle")String aboutStyle,
                               @Param("valueType") Integer valueType);

    List<KeyValueWithBLOBs> listShejishiAnli(@Param("valueType") Integer valueType,
                                             @Param("shejishiId") Integer shejishiId);

    int delAbout(@Param("valueType") Integer valueType,
                 @Param("aboutType") String aboutType);

    int modifyShunXu(@Param("id")Integer id,
                     @Param("href2")Integer href2);

    List<KeyValueWithBLOBs> listAllAppStucf(@Param("valueType") Integer valueType,
                                        @Param("offset") Integer offset,
                                        @Param("pageNumber")Integer pageNumber);

    int countAllAppStucf(@Param("valueType") Integer valueType);

}